package virtualmachinemips;

import br.unioeste.cc.vm.Memory;
import br.unioeste.cc.vm.MemoryInstruction;
import br.unioeste.cc.vm.Registers;
import br.unioeste.cc.vm.VirtualMachine;
import java.util.ArrayList;

/**
 *
 * @author diego
 */
public class VirtualMachineMips {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
//        String s = new String();
//        Memory m = new Memory();
//        
//        ArrayList<String> a = m.loadMemory();
//        System.out.println(a);
//        System.out.println();
//        
//        System.out.println("Array");
//        for (int i = 0; i < a.size(); i++) {
//            //type-r
//            s = a.get(i).substring(0, 6);
//            System.out.println(i + " op " + s);
//            s = a.get(i).substring(6, 11);
//            System.out.println(i + " rs " + s);
//            s = a.get(i).substring(11, 16);
//            System.out.println(i + " rt " + s);
//            s = a.get(i).substring(16, 21);
//            System.out.println(i + " rd " + s);
//            s = a.get(i).substring(21, 26);
//            System.out.println(i + " shamt " + s);
//            s = a.get(i).substring(26, 32);
//            System.out.println(i + " funct " + s);
//            System.out.println();
//        }

        /*
         * testes
         */
                
//        MemoryInstruction mi = new MemoryInstruction();
//        System.out.println(mi.getMemoryread());
//        System.out.println();
//        
//        //shift left
//        int sl = 1<<10;      
//        System.out.println("1 em binario é "+Integer.toBinaryString(1));
//        System.out.println("1<<10 = " + sl);
//        System.out.println("1<<10 em binario é "+Integer.toBinaryString(sl));
//        System.out.println();
//        
//        //shift right
        int sr = 8>>2;
        System.out.println("8 em binario é "+Integer.toBinaryString(8));
        System.out.println("8>>2 = " + sr);
        System.out.println("8>>2 em binario é "+Integer.toBinaryString(sr));
        System.out.println();
        
        
        int sr1 = -8>>2;
        System.out.println("8 em binario é "+Integer.toBinaryString(-8));
        System.out.println("8>>2 = " + sr);
        System.out.println("8>>2 em binario é "+Integer.toBinaryString(sr));
        System.out.println();
//        
//        String str = new String("10000");
//        
//        //stringToDec
//        int dec = Integer.parseInt(str,2);
//        System.out.println("decimal = " + dec);
//        //decToBinary
//        System.out.println("Decimal para binario = " + Integer.toBinaryString(dec));
//        //stringToBinary
//        int bin = Integer.parseInt(str);
//        System.out.println("binário = " + bin);
        
        //VirtualMachine vm = new VirtualMachine();
        //vm.execute();      
        
        //Registers r = new Registers();
        //r.createContents();
        
    }
}
